'use strict';

const db = uniCloud.database();
const collection = db.collection('food-categories');

exports.main = async (event, context) => {
  const { categoryId } = event.data || {};
  
  if (!categoryId) {
    return {
      code: 400,
      message: '缺少分类ID',
      data: null
    };
  }
  
  try {
    // 检查分类是否存在
    const existingCategory = await collection.doc(categoryId).get();
    
    if (!existingCategory.data || existingCategory.data.length === 0) {
      return {
        code: 404,
        message: '分类不存在',
        data: null
      };
    }
    
    // TODO: 这里可以添加检查分类是否被菜品使用的逻辑
    // 如果分类下有菜品，应该提示用户先处理相关菜品
    
    // 执行删除
    const result = await collection.doc(categoryId).remove();
    
    if (result.deleted === 1) {
      return {
        code: 200,
        message: '删除成功',
        data: {
          deletedId: categoryId
        }
      };
    } else {
      return {
        code: 500,
        message: '删除失败',
        data: null
      };
    }
  } catch (error) {
    console.error('删除菜品分类失败:', error);
    return {
      code: 500,
      message: '删除失败',
      data: null
    };
  }
};